\hypertarget{group___video}{
\section{Video}
\label{group___video}\index{Video@{Video}}
}
\subsection*{Defines}
\begin{DoxyCompactItemize}
\item 
\hypertarget{group___video_ga650e0da70e7d55fc9c7afe5210f3e2b6}{
\#define {\bfseries CHAR\_\-H}~16}
\label{group___video_ga650e0da70e7d55fc9c7afe5210f3e2b6}

\item 
\hypertarget{group___video_ga9c144bdcde09522969ac89b361b4a8f5}{
\#define {\bfseries MODE\_\-640x480}~0x101}
\label{group___video_ga9c144bdcde09522969ac89b361b4a8f5}

\item 
\hypertarget{group___video_gaef65c7a6075bbec43d02fd99e2d70b66}{
\#define {\bfseries MODE\_\-800x600}~0x103}
\label{group___video_gaef65c7a6075bbec43d02fd99e2d70b66}

\item 
\hypertarget{group___video_gadf78c5c3bcf227aaa2dc99c368e64184}{
\#define {\bfseries MODE\_\-1024x768}~0x105}
\label{group___video_gadf78c5c3bcf227aaa2dc99c368e64184}

\item 
\hypertarget{group___video_gaf68035626cbf58484d6b802ed8079dc6}{
\#define {\bfseries MODE\_\-1280x1024}~0x107}
\label{group___video_gaf68035626cbf58484d6b802ed8079dc6}

\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group___user_types_ga718b4eb2652c286f4d42dc18a8e71a1a}{ulong} \hyperlink{group___video_ga220dc6cc3f8a2e71c1ebc2958f002698}{get\_\-video\_\-addr} (int mode)
\item 
char $\ast$ \hyperlink{group___video_ga841cbdaf033ad317f249e57234447b99}{enter\_\-graphics} (int mode, \_\-\_\-dpmi\_\-meminfo $\ast$map)
\item 
void \hyperlink{group___video_gafc9db0642f882da2ea7f83f8e26676d2}{leave\_\-graphics} (\_\-\_\-dpmi\_\-meminfo map)
\item 
void \hyperlink{group___video_gac766566a5dad4f67f5b2adaf2020cbdc}{set\_\-pixel} (int x, int y, int color, char $\ast$base)
\item 
int \hyperlink{group___video_ga04b964260ff0cb0c34668ab91ad7f841}{get\_\-pixel} (int x, int y, char $\ast$base)
\item 
void \hyperlink{group___video_gadee257234a20447a677e020e27ae7e7f}{clear\_\-screen} (char color, char $\ast$base)
\item 
void \hyperlink{group___video_ga23674a1e5b90e122191a9f7993e4f7ee}{draw\_\-line} (int xi, int yi, int xf, int yf, int color, char $\ast$base)
\item 
void \hyperlink{group___video_ga4aae0a3f4336693d616e7cf45c6bd6cf}{drawCharAt} (char c, int xi, int yi, int fore\_\-color, int back\_\-color, int char\_\-scale, char $\ast$video\_\-base, char $\ast$table)
\item 
void \hyperlink{group___video_ga782b9130d65f5051c0d2f1779f1cad13}{drawStringAt} (char $\ast$s, int xi, int yi, int fore\_\-color, int back\_\-color, int char\_\-scale, char $\ast$video\_\-base, char $\ast$table)
\item 
void \hyperlink{group___video_gae70a5cb12706e5733fd3f2b6e2d9b422}{drawIntAt} (int num, int xi, int yi, int fore\_\-color, int back\_\-color, int char\_\-scale, char $\ast$video\_\-base, char $\ast$table)
\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
int \hyperlink{group___video_ga2a60090435aefe2530692883c79d9bb8}{HRES}
\item 
int \hyperlink{group___video_ga02a30657228763729d9e2351a0b6bcba}{VRES}
\end{DoxyCompactItemize}


\subsection{Detailed Description}
Entering/leaving/utility video functions 

\subsection{Function Documentation}
\hypertarget{group___video_gadee257234a20447a677e020e27ae7e7f}{
\index{Video@{Video}!clear\_\-screen@{clear\_\-screen}}
\index{clear\_\-screen@{clear\_\-screen}!Video@{Video}}
\subsubsection[{clear\_\-screen}]{\setlength{\rightskip}{0pt plus 5cm}void clear\_\-screen (char {\em color}, \/  char $\ast$ {\em base})}}
\label{group___video_gadee257234a20447a677e020e27ae7e7f}
Set graphics memory at memory address \char`\"{}base\char`\"{} to \char`\"{}color\char`\"{}. \hypertarget{group___video_ga23674a1e5b90e122191a9f7993e4f7ee}{
\index{Video@{Video}!draw\_\-line@{draw\_\-line}}
\index{draw\_\-line@{draw\_\-line}!Video@{Video}}
\subsubsection[{draw\_\-line}]{\setlength{\rightskip}{0pt plus 5cm}void draw\_\-line (int {\em xi}, \/  int {\em yi}, \/  int {\em xf}, \/  int {\em yf}, \/  int {\em color}, \/  char $\ast$ {\em base})}}
\label{group___video_ga23674a1e5b90e122191a9f7993e4f7ee}
Draw a line of color \char`\"{}color\char`\"{} between point (xi,yi) and (xf,yf) at memory address \char`\"{}base\char`\"{} \hypertarget{group___video_ga4aae0a3f4336693d616e7cf45c6bd6cf}{
\index{Video@{Video}!drawCharAt@{drawCharAt}}
\index{drawCharAt@{drawCharAt}!Video@{Video}}
\subsubsection[{drawCharAt}]{\setlength{\rightskip}{0pt plus 5cm}void drawCharAt (char {\em c}, \/  int {\em xi}, \/  int {\em yi}, \/  int {\em fore\_\-color}, \/  int {\em back\_\-color}, \/  int {\em char\_\-scale}, \/  char $\ast$ {\em video\_\-base}, \/  char $\ast$ {\em table})}}
\label{group___video_ga4aae0a3f4336693d616e7cf45c6bd6cf}
Desenha um caracter c em xi e yi, com cor fore\_\-color e background back\_\-color, redimensionado char\_\-scale. \hypertarget{group___video_gae70a5cb12706e5733fd3f2b6e2d9b422}{
\index{Video@{Video}!drawIntAt@{drawIntAt}}
\index{drawIntAt@{drawIntAt}!Video@{Video}}
\subsubsection[{drawIntAt}]{\setlength{\rightskip}{0pt plus 5cm}void drawIntAt (int {\em num}, \/  int {\em xi}, \/  int {\em yi}, \/  int {\em fore\_\-color}, \/  int {\em back\_\-color}, \/  int {\em char\_\-scale}, \/  char $\ast$ {\em video\_\-base}, \/  char $\ast$ {\em table})}}
\label{group___video_gae70a5cb12706e5733fd3f2b6e2d9b422}
Desenha um inteiro num em xi e yi, com cor fore\_\-color e background back\_\-color, redimensionado char\_\-scale. \hypertarget{group___video_ga782b9130d65f5051c0d2f1779f1cad13}{
\index{Video@{Video}!drawStringAt@{drawStringAt}}
\index{drawStringAt@{drawStringAt}!Video@{Video}}
\subsubsection[{drawStringAt}]{\setlength{\rightskip}{0pt plus 5cm}void drawStringAt (char $\ast$ {\em s}, \/  int {\em xi}, \/  int {\em yi}, \/  int {\em fore\_\-color}, \/  int {\em back\_\-color}, \/  int {\em char\_\-scale}, \/  char $\ast$ {\em video\_\-base}, \/  char $\ast$ {\em table})}}
\label{group___video_ga782b9130d65f5051c0d2f1779f1cad13}
Desenha uma string s em x\_\-ori e y\_\-ori, com cor fore\_\-color e background back\_\-color, redimensionado char\_\-scale. \hypertarget{group___video_ga841cbdaf033ad317f249e57234447b99}{
\index{Video@{Video}!enter\_\-graphics@{enter\_\-graphics}}
\index{enter\_\-graphics@{enter\_\-graphics}!Video@{Video}}
\subsubsection[{enter\_\-graphics}]{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ enter\_\-graphics (int {\em mode}, \/  \_\-\_\-dpmi\_\-meminfo $\ast$ {\em map})}}
\label{group___video_ga841cbdaf033ad317f249e57234447b99}
Enter graphics mode, enabling near pointers and mapping video physical memory to program virtual address.

Returns a generic pointer pointing to video memory address or NULL on error. \char`\"{}mode\char`\"{} specifies the VESA graphics mode to use, and the mapping information is returned through \char`\"{}map\char`\"{}.

Also initializes two global variables, VRES and HRES, \hypertarget{group___video_ga04b964260ff0cb0c34668ab91ad7f841}{
\index{Video@{Video}!get\_\-pixel@{get\_\-pixel}}
\index{get\_\-pixel@{get\_\-pixel}!Video@{Video}}
\subsubsection[{get\_\-pixel}]{\setlength{\rightskip}{0pt plus 5cm}int get\_\-pixel (int {\em x}, \/  int {\em y}, \/  char $\ast$ {\em base})}}
\label{group___video_ga04b964260ff0cb0c34668ab91ad7f841}
Returns the pixel color at screen coordinates x, y at memory address \char`\"{}base\char`\"{} \hypertarget{group___video_ga220dc6cc3f8a2e71c1ebc2958f002698}{
\index{Video@{Video}!get\_\-video\_\-addr@{get\_\-video\_\-addr}}
\index{get\_\-video\_\-addr@{get\_\-video\_\-addr}!Video@{Video}}
\subsubsection[{get\_\-video\_\-addr}]{\setlength{\rightskip}{0pt plus 5cm}{\bf ulong} get\_\-video\_\-addr (int {\em mode})}}
\label{group___video_ga220dc6cc3f8a2e71c1ebc2958f002698}
Returns the video memory address. \hypertarget{group___video_gafc9db0642f882da2ea7f83f8e26676d2}{
\index{Video@{Video}!leave\_\-graphics@{leave\_\-graphics}}
\index{leave\_\-graphics@{leave\_\-graphics}!Video@{Video}}
\subsubsection[{leave\_\-graphics}]{\setlength{\rightskip}{0pt plus 5cm}void leave\_\-graphics (\_\-\_\-dpmi\_\-meminfo {\em map})}}
\label{group___video_gafc9db0642f882da2ea7f83f8e26676d2}
Unmap video memory, disable near pointer and returns to text mode \hypertarget{group___video_gac766566a5dad4f67f5b2adaf2020cbdc}{
\index{Video@{Video}!set\_\-pixel@{set\_\-pixel}}
\index{set\_\-pixel@{set\_\-pixel}!Video@{Video}}
\subsubsection[{set\_\-pixel}]{\setlength{\rightskip}{0pt plus 5cm}void set\_\-pixel (int {\em x}, \/  int {\em y}, \/  int {\em color}, \/  char $\ast$ {\em base})}}
\label{group___video_gac766566a5dad4f67f5b2adaf2020cbdc}
Draws a pixel of color \char`\"{}color\char`\"{} at screen coordinates x, y at memory address \char`\"{}base\char`\"{} 

\subsection{Variable Documentation}
\hypertarget{group___video_ga2a60090435aefe2530692883c79d9bb8}{
\index{Video@{Video}!HRES@{HRES}}
\index{HRES@{HRES}!Video@{Video}}
\subsubsection[{HRES}]{\setlength{\rightskip}{0pt plus 5cm}int {\bf HRES}}}
\label{group___video_ga2a60090435aefe2530692883c79d9bb8}
global variable with the horizontal resolution in pixels \hypertarget{group___video_ga02a30657228763729d9e2351a0b6bcba}{
\index{Video@{Video}!VRES@{VRES}}
\index{VRES@{VRES}!Video@{Video}}
\subsubsection[{VRES}]{\setlength{\rightskip}{0pt plus 5cm}int {\bf VRES}}}
\label{group___video_ga02a30657228763729d9e2351a0b6bcba}
global variable with the vertical resolution in pixels 